<?php


/** Zend_Controller_Action */
require_once 'Zend/Controller/Action.php';
require_once 'Usuarios/RolesProvider.class.php';
require_once 'Usuarios/UserProvider.class.php';

class GestionUsuarios_EdicionUsuariosController extends Zend_Controller_Action {

	public function init() {
		$registry = Zend_Registry :: getInstance();
		$this->smarty = $registry->smarty;
		$this->smarty->assign('baseUrl', $this->getRequest()->getBaseUrl());
		$this->smarty->assign('moduleName', $this->getRequest()->getModuleName());
		$this->smarty->assign('controllerName', $this->getRequest()->getControllerName());
		$this->smarty->assign('actionName', $this->getRequest()->getActionName());
		$this->smarty->assign('subtitulo', 'Edicion de Usuarios');
	}

	public function eliminaAction() {
		try {
			$userId = $this->getRequest()->getParam('usuario');
			UserProvider :: deleteUser($userId);
			$this->_forward('index', 'consultausuarios', null, array (
				'mensajeCorrecto' => 'El usuario se ha eliminado con exito !'
			));
		} catch (Exception $e) {
			$this->_forward('index', 'consultausuarios', null, array (
			'mensajeError' => 'El usuario no se pudo eliminar (' . $e->getMessage() . ')'));
		}

	}

	public function indexAction() {
		if ($this->getRequest()->isPost()) {
			try {
				$usuario = new Usuario();
				$usuario->setNombre($_POST['nombre']);
				$usuario->setMail($_POST['mail']);
				$usuario->setPassword($_POST['password']);
				$usuario->setApellidoMaterno($_POST['apellidoMaterno']);
				$usuario->setApellidoPaterno($_POST['apellidoPaterno']);
				$usuario->setRol($_POST['rol']);
				UserProvider :: saveUser($usuario);
				$this->smarty->assign('mensajeCorrecto', 'El usuario ha sido dado de alta con exito.');
			} catch (Exception $e) {
				$this->smarty->assign('mensajeError', 'El usuario no pudo ser registrado. (' . $e->getMessage() . ')');
			}
		}
		$this->smarty->assign('roles', RolesProvider :: getRolesPairs());
		$this->smarty->displayInMasterPage('gestionusuarios_altausuarios_index.tpl', 'masterPage.tpl');
	}

}
?>